|
In computing, sequence containers refer to a group of container class templates in the standard library of the C++ programming language that implement storage of data elements. Being templates, they can be used to store arbitrary elements, such as integers or custom classes. One common property of all sequential containers is that the elements can be accessed sequentially. Like all other standard library components, they reside in namespace ''std''. The following containers are defined in the current revision of the C++ standard: array , vector , list , forward_list , deque . Each of these containers implements different algorithms for data storage, which means that they have different speed guarantees for different operations:* array implements a compile-time non-resizeable array. * vector implements an array with fast random access and an ability to automatically resize when appending elements. * deque implements a double-ended queue with comparatively fast random access. * list implements a doubly linked list. * forward_list implements a singly linked list.Since each of the containers needs to be able to copy its elements in order to function properly, the type of the elements must fulfill CopyConstructible and Assignable requirements.〔ISO/IEC (2003). ''ISO/IEC 14882:2003(E): Programming Languages - C++ §23.1 Container requirements ()'' para. 4〕 For a given container, all elements must belong to the same type. For instance, one cannot store data in the form of both char and int within the same container instance. ==History== Originally, only vector , list , deque were defined. Until the standardization of the C++ language in 1998, they were part of the Standard Template Library, published by SGI.The array container at first appeared in several books under various names. Later it was incorporated into boost C++ libraries and was proposed into the standard C++ library. The motivation for inclusion of array was that it solves two problems of the C-style array: the lack of STL-like interface and inability to be copied as any other object. It firstly appeared in C++ TR1 and later was incorporated into C++11.The forward_list container has been added to C++11 as a space-efficient alternative to list when reverse iteration is not needed.抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Sequence container (C++)」の詳細全文を読む スポンサード リンク
|